觀察到 APP 功能的網路行為也挖掘出 API 的用途、參數與回應格式,但有些參數無法得知其含意,所以除了分析網路也需要分析 APP 本身。
拆開 APK 發現裡面有 Xamarin 名稱的檔案,這 APP 應該就是 Xamarin 撰寫而成的。
Xamarin 是一個開發框架,可以讓開發者使用 C# 開發跨平台程式。
既然知道那些 DLL 是 C# 寫的,那就輪到不論是除錯還是反組譯都鼎鼎大名的 dnSpy,雖然已經封存不再維護,但還是非常實用,而且已經有人 fork 出來繼續維護更新。
dnSpy GitHub:
https://github.com/dnSpy/dnSpy
把所有 DLL 檔案無腦丟進 dnSpy 就可以看到原始碼
點選 File > Export to Project 匯出反組譯的原始碼
生出一堆漂亮的 C# 程式碼
就可以閱讀程式碼了解 APP 運作邏輯(這張只是想吐槽神奇的 JSON 建構方式)
都是內嵌網頁瀏覽器 (WebView)